본격적인 프로그래밍을 시작하기 전에 반드시 알아야 하는 것이 셸(shell)과 터미널(terminal), 그리고 콘솔(console)이다. 윈도우즈에서는 커맨드 프롬프트 라인(command prompt line), 우리말로 번역하여 명령줄이라고도 한다.
사실 정확히 따지자면 이 단어들은 서로 같은 뜻이 아니지만 프로그램을 처음으로 시작하는 초보자는 일단 다음과 같이 같은 개념으로 생각해도 된다.
검은 바탕에 글자만 하얗게 나오는 화면.
커서가 반짝거리고 키보드를 타이핑하면 글자가 써진다.
예를 들어 다음과 같은 화면을 말한다.
셸을 사용하는 것은 모든 컴퓨터 사용의 가장 기초이다. 앞으로 여러가지 데이터 분석을 수행할 때마다 자주 셸을 사용하게 될 것이다. 따라서 자신이 사용하는 컴퓨터 운영체제에서 어떻게 셸을 시작하고 어떤 셸 명령어를 지원하는지 잘 알고 있어야 한다.
윈도우즈 운영체제를 사용하는 경우에는 다음과 같이 셸을 시작할 수 있다.
맥 OS X 운영체제를 사용하는 경우에는 다음과 같이 셸을 시작할 수 있다.
셸 화면에서는 항상 새로운 줄이 시작할 때마다 무언가 글씨가 출력되어 있다. 가장 일반적으로 나오는 것이 $
(달러 표시) 기호이다. 경우에 따라 $
(달러 표시) 기호 앞에 사용자 이름이나 컴퓨터 이름 혹은 현재 디렉토리 위치 등 다른 글자들이 있을 수도 있다.
이러한 글자와 기호를 프롬프트(prompt)라고 한다.
프롬프트는 셸이 사용자의 명령을 받을 수 있는 상태가 되었음을 알려준다. 프롬프트가 나오면 키보드로 명령을 입력할 수 있다.
아까 셸과 터미널/콘솔은 각각 의미가 다르다고 했는데 정확하게 말하면
따라서 셸과 터미널/콘솔은 항상 같이 실행할 수 밖에 없기 때문에 보통 같은 의미로 사용된다.
셸 화면에서는 컴퓨터에게 글자를 타이핑하여 간단한 명령을 수행할 수 있다. 셸 명령은 주로 파일이나 폴더(디렉토리)를 관리하기 위한 명령이다. 윈도우즈의 셸 명령과 맥/리눅스의 셸 명령은 비슷하지만 약간 차이가 있다.
셸에서는 디렉토리와 파일을 만들고 관리할 수 있으며 현재 사용자가 보고 있는 디렉토리를 변경(이동)할 수도 있다. 다음은 셸에서 많이 사용되는 몇가지 명령을 정리한 것이다.
명령 | 윈도우즈 셸 | 맥/리눅스 셸 |
---|---|---|
화면 지우기 | cls |
ctrl+l |
현재 디렉토리 이름 출력 | cd |
pwd |
현재 디렉토리의 파일 목록 출력 | dir |
ls -Fcal |
한 칸 위의 디렉토리로 이동 | cd .. |
cd .. |
한 칸 아래의 디렉토리로 이동 | cd 디렉토리이름 |
cd 디렉토리이름 |
파일 지우기 | del 파일이름 |
rm 파일이름 |
디렉토리 만들기 | mkdir 디렉토리이름 |
mkdir 디렉토리이름 |
디렉토리 지우기 | rmdir 디렉토리이름 |
rmdir 디렉토리이름 |
셸 나가기 | exit |
exit |
셸 명령을 잘 사용하는 것은 컴퓨터를 다루는 가장 기본적인 능력이다. 여기에서 설명한 것은 가장 기초적인 셸 명령에 지나지 않는다. 좀 더 다양한 셸 명령이나 셸 스크립트 프로그래밍 방법을 알고 싶다면 다음 서적을 참고한다.